In the most basic of applications, each report and form is an independent, self-contained object with no explicit connections to the others.
If you want to view all assets of a certain type, you would access one report from the main menu; if you find one on this report for which you want to see more advanced details, you would go to a different report from the main menu and type that asset's ID into a criterion; if you discover that some setting for the resource is incorrect, you would access a form from the main menu, and manually type in that ID and the correct values you wish to save.
While this is a valid application flow, it can be inconvenient given the intuitive connections between these reports and forms, and requires users to have more knowledge about how to navigate the application than may be necessary. Instead, the system provides a better way: reports can include within themselves links that can bring up forms, reports, or other information about the results of a query. The four sub-sections of this topic describe the types of information to which you can connect a report:
There are two means of connecting a report to additional information, standard Links, and Commands. Each of these methods is described below.
A standard Link converts the text within the column of a table view into a clickable item that brings up additional information about the selected table row. Such links can be defined within the Add or Edit Column panels while editing a table view.
Elements of map views can contain links in a similar fashion, and can be defined on the Add or Edit Map Element panels. At runtime, when a user clicks on an icon on a map, a small panel appears containing the label and address of the corresponding query result; if a link is defined for that map element, a "More Details" link appears on this panel as well, and can connect the map element to an info panel, embedded form, sub-report, or hyperlink.
Similarly, the label of each query result in the row guide of a map view becomes a clickable link that connects to the same thing.
As will be described in greater detail in the Embedded Forms and Sub-Reports sections, links and commands to other forms and reports can pre-populate the fields of a form or the criteria of a report with the values of a selected query result. As a result, when defining links of these types, you can define mappings from the fields or criteria of the target form or report to the target fields of the current query, as shown above.
Whereas a standard link only applies to a table column or map element, any view type can contain commands. A command appears as a button above the contents of the view, and can similarly link a report view to additional information. In the "Display As" block of the Queries & Reports page, the Commands section appears below the content specific to each individual view type.
In essence, a command is little more than a wrapper for a standard Link, with several additional attributes to differentiate it from other commands.
First, a command has a text Label that appears on the button at runtime to inform the user of its purpose. Next, a command has a Command Mode attribute that controls the appearance of the button itself; the four possible values for this attribute are Add, Edit, Delete, and View. For table views, commands with the Edit or Delete modes can be given the "Button appears in row" flag.
If this flag is checked, the system will display the command as an unlabeled button in the rightmost column of the table report, mimicking how many of the service's design tools contain tables with edit and delete buttons. Naturally, a maximum of one command of each mode should be given this flag, to avoid confusion.
The screenshot below shows an example of each type of command, as well as a standard link within the first column, for comparison.
The appearance of each type of report command. The rightmost column also contains Edit and Delete commands with the "Button appears in row" flag set to true.
Each command mode also controls what type of content can be linked to the report using the button. For example, it would not make much sense for a Delete button to simply bring up a static information panel with no capacity to delete anything; similarly, it would not make sense for a View button to bring up a form that can actually modify application data instead of simply view it. As a result, commands with the Add, Edit, and Delete mode can only link to embedded forms, and commands with the View mode can only link to Info Panels, Sub-Reports, and Hyperlinks.